using System;
using System.Collections.Generic;
using Medianamik.Core.Synchronization;

namespace Medianamik.Core.DAL.Repositories
{
    public partial interface INodeTypeRepository
    {
        IEnumerable<NodeType> All(bool includeManyToMany);
        NodeType GetById(Guid id);
        IList<NodeType> ChildsOf(Guid typeId, bool inclusive, int maxDepth,
            bool inlcudeAbstractTypes);
        IEnumerable<NodeType> TypesImplementing(Guid interfaceId);
        bool TypeIsImplementing(Guid guid, Guid id);
        bool NodesOfTypeCanHaveChildren(Guid typeId);
    }
}